{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "6e8c976e",
   "metadata": {},
   "source": [
    "## 使用xgboost工具包实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "id": "f408ecdf",
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "from sklearn import metrics\n",
    "from sklearn.model_selection import train_test_split\n",
    "import xgboost as xgb\n",
    "import matplotlib.pyplot as plt\n",
    "from sklearn.metrics import confusion_matrix\n",
    "import seaborn as sns\n",
    "from sklearn.metrics import confusion_matrix\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "86b4e79a",
   "metadata": {},
   "source": [
    "### 1. 数据集准备\n",
    "* 读取 csv文件(TODO:你自己的数据集)\n",
    "* 保存为 训练集(train_x train_y)、测试集(test_x test_y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "2c85b0d6",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 4401 entries, 0 to 4400\n",
      "Data columns (total 6 columns):\n",
      " #   Column             Non-Null Count  Dtype  \n",
      "---  ------             --------------  -----  \n",
      " 0   label              4401 non-null   int64  \n",
      " 1   length             4401 non-null   float64\n",
      " 2   height             4401 non-null   float64\n",
      " 3    roughness_values  4401 non-null   float64\n",
      " 4   adhesion           4401 non-null   float64\n",
      " 5   Youngs_modulus     4401 non-null   float64\n",
      "dtypes: float64(5), int64(1)\n",
      "memory usage: 206.4 KB\n"
     ]
    }
   ],
   "source": [
    "from sklearn.preprocessing import StandardScaler\n",
    "from sklearn.preprocessing import MinMaxScaler\n",
    "\n",
    "df = pd.read_csv(\"./celldata_fine_tuning.csv\")\n",
    "\n",
    "data=df.iloc[:,1:]\n",
    "\n",
    "target=df.iloc[:,:-5]\n",
    "\n",
    "# ss = MinMaxScaler()\n",
    "\n",
    "# target = ss.fit_transform(target)\n",
    "\n",
    "df.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "69e97529",
   "metadata": {},
   "outputs": [],
   "source": [
    "train_x, test_x, train_y, test_y = train_test_split(data,target,test_size=0.2,random_state=7)\n",
    "\n",
    "test_y = test_y - 1 #标签为[0,class_num)\n",
    "train_y = train_y - 1"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8a0b63ba",
   "metadata": {},
   "source": [
    "### 2. xgboost模型配置 \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "id": "649a589c",
   "metadata": {},
   "outputs": [],
   "source": [
    "# xgboost模型初始化设置\n",
    "dtrain=xgb.DMatrix(train_x,label=train_y)\n",
    "\n",
    "dtest=xgb.DMatrix(test_x)\n",
    "watchlist = [(dtrain,'train')]\n",
    "\n",
    "# booster: 包括常规参数、模型参数、学习任务参数 TODO:you just need to change flowing parameters\n",
    "params={\n",
    "        # 常规参数\n",
    "        'booster':'gbtree',             #以决策树为基分类器\n",
    "        'nthread':8, #使用8个cpu进行计算\n",
    "        'eta': 0.025,\n",
    "        'seed':0,\n",
    "        \n",
    "        #模型参数\n",
    "        'max_depth':8,                  # 树的深度\n",
    "        'subsample':0.75,               #每棵树随机进行数据采样比例\n",
    "        'colsample_bytree':0.75,        #用来控制每棵随机采样的列数的占比(每一列是一个特征)。 典型值：0.5-1\n",
    "        'min_child_weight':1,           # 最小叶子节点样本权重和\n",
    "\n",
    "        # 学习任务参数\n",
    "        'gamma':0.15,                   # 惩罚项系数\n",
    "        'lambda':5,                    # L2正则化系数\n",
    "        'objective': 'multi:softmax', #定义损失函数 二元分类问题('multi:softmax' #多元分类)\n",
    "        'eval_metric': 'mlogloss',           # 评价指标\n",
    "        'learning_rate' : 0.01,          #学习率\n",
    "        'num_class': 22                 #设置分类类别\n",
    "       }\n",
    "num_boost_round = 80 #构建树的数目"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "41160342",
   "metadata": {},
   "source": [
    "### 3. 训练与结果展示"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "id": "ea9f3bb6",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0]\ttrain-mlogloss:3.05978\n",
      "[1]\ttrain-mlogloss:3.02845\n",
      "[2]\ttrain-mlogloss:2.99970\n",
      "[3]\ttrain-mlogloss:2.97222\n",
      "[4]\ttrain-mlogloss:2.94396\n",
      "[5]\ttrain-mlogloss:2.91798\n",
      "[6]\ttrain-mlogloss:2.88879\n",
      "[7]\ttrain-mlogloss:2.86185\n",
      "[8]\ttrain-mlogloss:2.83520\n",
      "[9]\ttrain-mlogloss:2.80727\n",
      "[10]\ttrain-mlogloss:2.78251\n",
      "[11]\ttrain-mlogloss:2.75720\n",
      "[12]\ttrain-mlogloss:2.73316\n",
      "[13]\ttrain-mlogloss:2.71068\n",
      "[14]\ttrain-mlogloss:2.68542\n",
      "[15]\ttrain-mlogloss:2.66208\n",
      "[16]\ttrain-mlogloss:2.63843\n",
      "[17]\ttrain-mlogloss:2.61345\n",
      "[18]\ttrain-mlogloss:2.59069\n",
      "[19]\ttrain-mlogloss:2.57035\n",
      "[20]\ttrain-mlogloss:2.54717\n",
      "[21]\ttrain-mlogloss:2.52564\n",
      "[22]\ttrain-mlogloss:2.50448\n",
      "[23]\ttrain-mlogloss:2.48316\n",
      "[24]\ttrain-mlogloss:2.46292\n",
      "[25]\ttrain-mlogloss:2.44283\n",
      "[26]\ttrain-mlogloss:2.42335\n",
      "[27]\ttrain-mlogloss:2.40373\n",
      "[28]\ttrain-mlogloss:2.38427\n",
      "[29]\ttrain-mlogloss:2.36509\n",
      "[30]\ttrain-mlogloss:2.34655\n",
      "[31]\ttrain-mlogloss:2.32895\n",
      "[32]\ttrain-mlogloss:2.31124\n",
      "[33]\ttrain-mlogloss:2.29365\n",
      "[34]\ttrain-mlogloss:2.27634\n",
      "[35]\ttrain-mlogloss:2.25935\n",
      "[36]\ttrain-mlogloss:2.24275\n",
      "[37]\ttrain-mlogloss:2.22545\n",
      "[38]\ttrain-mlogloss:2.20730\n",
      "[39]\ttrain-mlogloss:2.18995\n",
      "[40]\ttrain-mlogloss:2.17247\n",
      "[41]\ttrain-mlogloss:2.15610\n",
      "[42]\ttrain-mlogloss:2.14073\n",
      "[43]\ttrain-mlogloss:2.12550\n",
      "[44]\ttrain-mlogloss:2.10950\n",
      "[45]\ttrain-mlogloss:2.09404\n",
      "[46]\ttrain-mlogloss:2.07876\n",
      "[47]\ttrain-mlogloss:2.06413\n",
      "[48]\ttrain-mlogloss:2.05006\n",
      "[49]\ttrain-mlogloss:2.03574\n",
      "[50]\ttrain-mlogloss:2.02157\n",
      "[51]\ttrain-mlogloss:2.00761\n",
      "[52]\ttrain-mlogloss:1.99347\n",
      "[53]\ttrain-mlogloss:1.98017\n",
      "[54]\ttrain-mlogloss:1.96629\n",
      "[55]\ttrain-mlogloss:1.95297\n",
      "[56]\ttrain-mlogloss:1.94013\n",
      "[57]\ttrain-mlogloss:1.92714\n",
      "[58]\ttrain-mlogloss:1.91375\n",
      "[59]\ttrain-mlogloss:1.90055\n",
      "[60]\ttrain-mlogloss:1.88737\n",
      "[61]\ttrain-mlogloss:1.87513\n",
      "[62]\ttrain-mlogloss:1.86239\n",
      "[63]\ttrain-mlogloss:1.84954\n",
      "[64]\ttrain-mlogloss:1.83670\n",
      "[65]\ttrain-mlogloss:1.82458\n",
      "[66]\ttrain-mlogloss:1.81273\n",
      "[67]\ttrain-mlogloss:1.80108\n",
      "[68]\ttrain-mlogloss:1.78957\n",
      "[69]\ttrain-mlogloss:1.77837\n",
      "[70]\ttrain-mlogloss:1.76724\n",
      "[71]\ttrain-mlogloss:1.75577\n",
      "[72]\ttrain-mlogloss:1.74500\n",
      "[73]\ttrain-mlogloss:1.73384\n",
      "[74]\ttrain-mlogloss:1.72333\n",
      "[75]\ttrain-mlogloss:1.71227\n",
      "[76]\ttrain-mlogloss:1.70182\n",
      "[77]\ttrain-mlogloss:1.69113\n",
      "[78]\ttrain-mlogloss:1.68085\n",
      "[79]\ttrain-mlogloss:1.67035\n",
      "打印精准率、召回率和F1值\n",
      "              precision    recall  f1-score   support\n",
      "\n",
      "           0       0.71      0.78      0.74        37\n",
      "           1       0.57      0.94      0.71        31\n",
      "           2       0.78      0.50      0.61        58\n",
      "           3       0.69      0.65      0.67        51\n",
      "           4       0.75      0.73      0.74        37\n",
      "           5       0.77      0.87      0.82        39\n",
      "           6       0.72      0.61      0.66        46\n",
      "           7       1.00      0.97      0.99        40\n",
      "           8       0.78      0.82      0.79        38\n",
      "           9       0.87      0.92      0.89        36\n",
      "          10       0.95      0.82      0.88        49\n",
      "          11       0.74      0.83      0.78        41\n",
      "          12       0.95      0.87      0.91        46\n",
      "          13       0.87      0.80      0.84        41\n",
      "          14       0.89      0.94      0.92        36\n",
      "          15       0.85      0.88      0.87        33\n",
      "          16       0.90      0.83      0.86        42\n",
      "          17       0.76      1.00      0.86        34\n",
      "          18       0.91      0.74      0.82        43\n",
      "          19       0.71      0.97      0.82        30\n",
      "          20       1.00      1.00      1.00        36\n",
      "          21       1.00      0.86      0.93        37\n",
      "\n",
      "    accuracy                           0.82       881\n",
      "   macro avg       0.83      0.83      0.82       881\n",
      "weighted avg       0.83      0.82      0.82       881\n",
      "\n",
      "Precision: 0.83, Recall: 0.83, F1: 0.82 \n"
     ]
    }
   ],
   "source": [
    "# 建模与预测：50棵树\n",
    "bst=xgb.train(params,dtrain,num_boost_round=num_boost_round,evals=watchlist)\n",
    "y_pred=bst.predict(dtest)\n",
    "\n",
    "def print_precison_recall_f1(y_true, y_pre):\n",
    "    \"\"\"打印精准率、召回率和F1值\n",
    "    average = [None, 'micro', 'macro', 'weighted']\n",
    "    \"\"\"\n",
    "    print(\"打印精准率、召回率和F1值\")\n",
    "    print(metrics.classification_report(y_true, y_pre))\n",
    "    f1 = round(metrics.f1_score(y_true, y_pre, average='macro'), 2)\n",
    "    p = round(metrics.precision_score(y_true, y_pre, average='macro'), 2)\n",
    "    r = round(metrics.recall_score(y_true, y_pre, average='macro'), 2)\n",
    "    print(\"Precision: {}, Recall: {}, F1: {} \".format(p, r, f1))\n",
    "print_precison_recall_f1(test_y,y_pred)"
   ]
  },
  {
   "cell_type": "markdown",
   "source": [
    "## 指标展示"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%% md\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 1440x720 with 2 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABBUAAAJdCAYAAABtWk88AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAACzaklEQVR4nOzdeZyNdf/H8deZfZgZyz0GM1RKubuTtrvkrijuIUu2QpQoWwspFaW6VaRNSSlLKqQMsteEidJCC0ppt68xGTuzn98ffiZjxkyZc+b7Obyf9+M8bteZmXO9+l4zZ/Lte12Xx+v1ehERERERERER+ZuCXAeIiIiIiIiISGDSpIKIiIiIiIiInBBNKoiIiIiIiIjICdGkgoiIiIiIiIicEE0qiIiIiIiIiMgJ0aSCiIiIiIiIiJwQTSqIiIj8TTNmzODqq6+mW7duJ/T1PXr0YPXq1T6uOnEjR47kww8/LPRjI0aMYNasWaUbJCIiIgHD4/V6va4jREREAsktt9zC9ddfT6tWrVyn+ETnzp256aabuPbaa12niIiISIAJcR0gIiJSGt59913efPNNgoKCqFChAs888wxVq1ZlypQpvPXWWwQFBREbG8ujjz5KjRo1ePDBB4mKiuKXX37h999/p1atWjzzzDOMGDGC77//ns2bN7Nr1y5+/vlnzj777LxVCw8++GDe9jvvvENSUhKhoaGEh4fzxBNPULNmTRo2bMiIESM4//zz//b+y5Ytm++f68EHHyQiIoJff/2VnTt30rBhQ8qXL89HH31EamoqQ4YMoV69eqxbt44nnniCAwcOkJqayj//+U9efPFF3n33XVatWsWzzz5LcHAwCxcuZPfu3WzatImrr76anTt3cvbZZ3P11Vdz4403MnHiRM4991z69+9PSEgIQ4cOdXE4RURExAid/iAiIie9n3/+mWHDhjFu3Djmzp1Lw4YNGTVqFEuXLmXcuHFMnDiROXPm0KJFC+666y6OLOJbtWoVr7/+OsnJyWzZsoV58+YxcOBAateuTf/+/enatetx95mTk8PQoUMZN24c06dPp3379ixfvjzf55zI/gvz448/MmHCBCZNmsQbb7xBmTJlSEpK4pZbbuG1114DYOrUqbRu3ZqpU6eyYMECNm/ezMcff8xNN92U98+TmJgIQHp6Ou+//z4PPPBA3j7OOussHnjgAQYMGMC0adP4+eef+d///nfCx0RERERODppUEBGRk97SpUu58sorqVq1KgBdu3bliSee4NNPP6VZs2ZUrFgRgLZt27J9+3Y2b94MwFVXXUVYWBihoaGcc8457Nmz5y/vMzg4mGuvvZYbb7yRJ554gpiYGG644YZ8n+Or/V9zzTWEhoZSqVIlypQpw1VXXQXAaaedxu7duwF44IEHqFixIq+99hqPPfYYO3bs4ODBg4W+3iWXXFLo8+3bt+eMM85gyJAhvPTSS0RERPzl8RAREZGTk05/EBGRk15wcDAejydvOz09nS1btpCbm1vgc71eL9nZ2QD5/tLs8Xgo7DJExz6flZWV9+dhw4bx66+/smTJEsaOHcvs2bMZMWJE3sd9sX+AsLCwfNshIQV/vffr14+cnByaNm3K1VdfzbZt2477emXKlCn0+czMTDZs2EB0dDQ//fQTZ5xxRqGfJyIiIqcOrVQQEZGTXt26dVm6dCk7duwAICkpieeee46rrrqK5ORk0tLSAJg+fTrly5fn9NNP/8uvXaFCBVatWgXA9u3b+eqrrwBIS0ujQYMGlC9fnq5du3LPPffw/fff5/taX+z/r/rss8+46667aNasGQArV64kJycHODzpcmQioyjPPvssZ599Nq+//jpDhgxhy5YtPu8UERGRwKKVCiIictKrVasWDzzwAN27dwegUqVKDB06lMqVK9O1a1e6dOlCbm4uFStWZMyYMQQF/fU5986dO3P//ffTpEkTqlWrxuWXXw5AxYoVueOOO+jatSsREREEBwczZMiQfF97xRVXlHj/f9W9997LXXfdRZkyZYiKiuLSSy9l48aNADRs2JAXXngh3yqLY3388cekpKQwd+5cYmJi6NKlC/fddx+TJk0qdGWEiIiInBp0S0kREREREREROSE6/UFERERERERETogmFUREREREREROUc888wwPPvggAEuWLOG6666jcePGDB8+/C99vSYVRERERERERE5BS5cuZebMmcDhu2MNHDiQV199leTkZFatWsXixYuLfQ1NKoiIiIiIiIicYnbv3s3w4cO5/fbbAfjuu+84/fTTqV69OiEhIVx33XXMmzev2NfR5ZpFRERERERETgJ79+5l7969BZ6PiYkhJiYm33P/+9//uPfee9m2bRsAO3bsoFKlSnkfj4uLY/v27cXuMyAmFfb3a+k6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RSo/crnrhJNCfFRF1wlF2ro/zXVCwAsPMXCNlZNAQlk7pygUZu0ehyvUREREHMjO3OI6wW8OLRxbavuKbNTzL33eV199xfDhw3nrrbfIzs6mWbNmjBs3jr59+/L6668TFxf3l/fpl5UKAPXq1SvwXNWqVf/2hIKIiIiIiIiI+M5ll13GxIkTCQkJYfv27eTk5BAREcHWrVsZOHAg27dvJzExkd69exMUVPRVE/w2qSAiIiIiIiIipWfv3r3s3VvwuoExMTHExOS/8HpoaCgvvfQSb7zxBtdeey3Z2dlcfvnlDBo0iOjoaHr16sW7775L+/bti9ynXy7UKCIiIiIiIiKU6oUaJ0yYQKNGjQo8JkyYUGja3XffzdKlS9m2bRtLly7llVdeIS4ujsjISDp37szixYuL/cfTSgURERERERGRk0CXLl1o06ZNgeePXaWwZs0aMjMzOffcc4mMjKRx48YkJydTvnx5mjRpAhy+q2NISPFTBppUEBEREREREfGX3NK71WNhpzkUZvPmzbz00ktMnjwZgIULF3LppZcydOhQLr/8csqUKcOUKVMKnaA4liYVRERERERERE4hDRo04LvvvqN169YEBwfTuHFjevfuTYUKFejYsSPZ2dk0btyYFi2KvxOjJhVERERERERE/MVbeisV/o4+ffrQp0+ffM/ddNNN3HTTTX/rdXShRhERERERERE5IQGxUuGD379xnRDwyo90XVC0tC7nuU4o1r9npblOKNbaPdtcJwS88JBQ1wlFysjOcp1QrPIRZV0nFEs/KyVn/Tgfys50nVCsQPh5FhERHyjFayq4oJUKIiIiIiIiInJCAmKlgoiIiIiIiEhA0koFEREREREREZGCtFJBRERERERExF+M3v3BV7RSQUREREREREROiFYqiIiIiIiIiPiLrqkgIiIiIiIiIlLQKTWp0KxpI1YsT+GHVZ+QNHkM0dFRrpMKsN5otS+0biPK/m8UZf83ijIDhhN0+tlE3v5o3nNl/zeK6BEzibzrcdepef7btAEr1i12nVEoq8f5aIHQCDB27PP07dvDdUahrI9huw4t+fjzOXz02WySU5K48KLarpMKsD6GYL8xEI7zEVZ/nq0fY7DfaL0P1OgL1vvAfqP1PrO8uaX3cOCUmVSIja3IuNdeoH2HnpxXuz7r1m1g6JMDXWflY73Ral9Q5WqE39CdgyMe5sATd5D5/juUuWMQh0YP5sATd3DgiTs4NHE43kP7SX9npOtcAE4/szoDHr8Hj8fjOqUAq8f5aIHQWKvWWSQnv0PrNk1dpxTK+hjWrFmDxwb3p0PbblxzZSteeG4U4yfZ+Pk9wvoYgv3GQDjOYPvn2foxBvuN1vtAjb5gvQ/sN1rvE3dOmUmFxMQGLFu2ktWr1wEwesxEOnVs47gqP+uNVvu82VmkTxyOd08aADkbfsNTrgIE//8lQ4JDiLz1AdKnjMa7K9Vh6WERkeEMe3UwTz063HVKoawe56MFQmPPXrcwfnwSM2cku04plPUxzMjM5J4+j7B9++Gf2W9XfE9c5VhCQ0Mdl/3J+hiC/cZAOM5g++fZ+jEG+43W+0CNvmC9D+w3Wu8Td/w2qbB+/Xq2b98OwLRp0xgyZAjJye5+GVevFs+mzVvztjdv3ka5cjGmluxYb7Ta5925nezvv8rbDm/fi+yVX0BONgChV16Ld/dOsr/53FViPoOHPUzSxBn88uNvrlMKZfU4Hy0QGu/rN4ipU+e4zjgu62O4aeMWUuZ/nLc9+KmHmJe8iKysLHdRx7A+hmC/MRCOM9j+ebZ+jMF+o/U+UKMvWO8D+43W+0zLzS29hwN+ufvD+PHjeeutt8jNzeXyyy9n27ZtJCYmMn36dNatW8ddd93lj90WKSgoCK/XW+D5nJycUm85HuuN1vsIiyDy1vvxVKzEwRf/XIoVltiW9Ikvuus6SqdbbyA7J5vp78whoXpV1zmFMn+cCYxG6wJlDMuUieTlUU+TUK0q7dt2c52TTyCMYSA0gu3jbF0gHGPrjdb7QI2+YL0P7Dda7xN3/LJSYfr06SQnJzNp0iTmzZvHmDFjuOmmmxg1ahTz58/3xy6LtXHTFuLjK+dtJyRUIS1tFwcPHnLSUxjrjZb7PBUrUfbB4ZCby8FhD8ChAwAEVT8LT1AwOb9+57jwsLY3Xsf5F57H7I/e5rXJI4iICGf2R28TVznWdVoey8f5iEBotC4QxjChWlWSU6aQm5tL6+ad2btnn+ukfAJhDAOh0fpxti4QjrH1Rut9oEZfsN4H9hut95mmCzX+fbm5uYSFhZGQkMBtt91GeHh43sdczWSlpCym7mUXU7NmDQB69ezMnLkLnLQcj/VGs33hkZS9fxhZ33zOodeGQlZm3odCzqlD9s/fums7xg1NutCifgdaXXMTPTr2JT09g1bX3MSO7X+4Tstj9jgfJRAarbM+hlFRZZn9/iTen7uAHrfeS3p6huukAqyPIdhvDITjbJ31Ywz2G633gRp9wXof2G+03ifu+OX0h8aNG3PzzTczceJE+vTpA8DPP//MI488QtOmbq6cnJq6k+49+jElaSxhYaGsXbOBrrf1ddJyPNYbrfaFNWyF5x9xhF50BaEXXZH3/MHn+xNUOYHcndsd1gUeq8f5aIHQaJ31MezW82aqnxZPsxaJNGuRmPd825Zd2JW2213YUayPIdhvDITjbJ31Ywz2G633gRp9wXof2G+03meao2sdlBaPt7ATY3zg66+/5tJLL83bXrt2LZs2baJBgwZ/+7VCwhJ8mSYGpXU5z3VCsf49K811QrHW7tnmOiHghYfYuur8sTKybV3ArjDlI8q6TijW7vQDrhMCnvXjfCg7s/hPciwQfp5FREpLduYW1wl+c+jdIaW2r8gbHim1fR3hl5UKQL4JBYAzzzyTM88801+7ExEREREREbHnJF+p4LdbSoqIiIiIiIjIyc1vKxVERERERERETnn+ueKAGVqpICIiIiIiIiInRCsVRERERERERPxF11QQERERERERESlIKxVERERERERE/OUkX6mgSQUx4cwp610nFGvjw1e4TihWzKPbXCeIn8VHVXSdUKyt+9NcJxSrfERZ1wlF2p1+wHVCsQ5lZ7pOKFJGdpbrBBERkVOCJhVERERERERE/MV7cq9U0DUVREREREREROSEaFJBRERERERERE6ITn8QERERERER8ZeT/EKNWqkgIiIiIiIiIidEKxVERERERERE/MXrdV3gV1qpICIiIiIiIiIn5JSaVGjWtBErlqfww6pPSJo8hujoKNdJBVhvtN4H0K5DSz7+fA4ffTab5JQkLryotuskQi5uRES3IUTcNpiwtndDmWjweAht1JGI7kOJ6Pk0IRde7TozTyAc50BoBBg79nn69u3hOqNQXbp35MMlM0n5fAbjJr3EP2Iruk7KJxCOscX3m2MFwjiC7Z8V62NovQ/sN1rvAzX6gvU+sN9ovc+s3NzSezhwykwqxMZWZNxrL9C+Q0/Oq12fdes2MPTJga6z8rHeaL0PoGbNGjw2uD8d2nbjmitb8cJzoxg/aaTTJk/l0wm57FrS33qS9DcexbtrO6FXtSXk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FxVVltnvT+L9uQvoceu9pKdnuE4qwPoYAkSViyL+jAR+WPaj65RCWR9D632Bwvo4Wu8D+43W+yzz5npL7eFCiD9e9OhlMf/5z3/4z3/+Q1ZWFr/88gubNm3yxy6LlZq6k+49+jElaSxhYaGsXbOBrrf1ddJyPNYbrfdBYDRaFwhjaLExvEkbgipVJuzfVxH276vynt//5H14oqKJHjoGgoLIWf8bByeNclgaGCwe42OpseS69byZ6qfF06xFIs1aJOY937ZlF3al7XYXdhTrYwiQcEY8aTt2kpNtcwmy9TG03hcorI+j9T6w32i9T9zxeAs7MaaEpk2bRrt27Xz2eiFhCT57LZETFR5i52rkx5ORbefiZoHqj+vPcZ1QpITZ61wnFEvfh6eG8hFlXScUaXf6AdcJxWoQZ/tUqMU7fnCdcFKw/u8Pes8WK7Izt7hO8JvdHa8ptX2Vn/xRqe3rCL+c/uDLCQURERERERERsckvpz+IiIiIiIiICM5u9Vha/LJSQUREREREREROflqpICIiIiIiIuInru7KUFq0UkFERERERERETohWKoiIiIiIiIj4i66pICIiIiIiIiJSkFYqiPxFkSFhrhOKpXtNl1zs9F9dJxRp31s9XScUK7rzWNcJUgp2px9wnRDwFu/4wXWClALrv5vDQ0JdJxTL+hiKFEfXVBARERERERERKYRWKoiIiIiIiIj4y0l+TQVNKoiIiIiIiIicYkaOHMkHH3wAQIMGDejfvz8PPfQQy5cvJzIyEoDevXuTmJhY5OtoUkFERERERETET7wGVyosWbKEzz77jJkzZ+LxeOjevTspKSmsWrWKSZMmERcX95dfS9dUEBERERERETmFVKpUiQcffJCwsDBCQ0M566yz2Lp1K1u3bmXgwIFcd911vPTSS+TmFj8jopUKIiIiIiIiIieBvXv3snfv3gLPx8TEEBMTk7d99tln5/15/fr1fPDBB7z99tt89dVXDBo0iOjoaHr16sW7775L+/bti9ynJhVERERERERE/KUUT3+YMGECI0eOLPB879696dOnT4Hnf/vtN3r16kX//v0588wzeeWVV/I+1rlzZ2bNmlXspMIpdfpDs6aNWLE8hR9WfULS5DFER0e5TirAeqP1PrDf2K5DSz7+fA4ffTab5JQkLryotuukAqyPIdhvtNqX9OUvtH35fa4f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ERERET8YOXIkH3zwAQANGjSgf//+LFmyhKeeeoqMjAyaNm3KvfcWf3HrYicVLr74YqZOnco333xDbm4uF1xwARUrViz5P4GIiIiIiIjISS7X4DUVlixZwmeffcbMmTPxeDx0796d9957j2HDhvHWW29RtWpVevXqxeLFi2nQoEGRr1XspMIPP/wAQGxsLADbtm1j27ZtnHfeeT74RxERERERERERX9i7dy979+4t8HxMTAwxMTF525UqVeLBBx8kLCwMgLPOOov169dz+umnU716dQCuu+465s2bV/JJhT59+uT9OSsri9TUVGrXrs2777771/6pxITd6QdcJwQ83Qtb5ORR/eaxrhOKdGjrp64TihUZf5XrhCIFwnt2eEio6wQRESkFpXn3hwkTJjBy5MgCz/fu3Tvf3+3PPvvsvD+vX7+eDz74gJtvvplKlSrlPR8XF8f27duL3WexkwqLFi3Kt/3ll18yd+7cYl9YREREREREREpPly5daNOmTYHnj16lcLTffvuNXr160b9/f4KDg1m/fn3ex7xeb7F3foS/MKlwrLp16/L000//3S8TERERERERET869jSHoixfvpy7776bgQMH0rx5c7766itSU1PzPp6amkpcXFyxr/OXr6kAh2cqVq1aRXp6+l+KFBERERERETmVWbxQ47Zt27jrrrsYPnw49erVA+CCCy5g3bp1bNiwgWrVqvHee+9x/fXXF/taf+uaCh6Ph3/84x889thjJ14vIiIiIiIiIs68/vrrZGRk5DsL4cYbb+Tpp5+mT58+ZGRk0KBBA6699tpiX8vj9Xq9RX3Chx9+yH//+9+SV5dAbMw5TvdfHF0EUUQksJSPKOs6oUjb1s5znVAs6xdqDAS6UGPJBcIFOUXkr8nO3OI6wW++iG9bavu6fOuMUtvXEUHFfcLw4cNLo0NEREREREREAkyxpz+cc845jBo1in//+9+UKVMm7/nzzjvPr2EiIiIiIiIigc7iNRV8qdiVCvPnz2fatGkMGDCAPn360KdPH7p3714abT7XrkNLPv58Dh99NpvklCQuvKi266QCmjVtxIrlKfyw6hOSJo8hOjrKdVI+1vtAjb5gvQ/sN1rvA/uN1vvA9u+VhZ8s4bL/Hl5umZOTw9Mvjua6jj1o2v42psx833HdnwLhOAdCI8DYsc/Tt28P1xlFstoYCMdY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71zjl5UKvXr1Yv369cTFxRW4mIfH42HhwoX/196dhldV3X8bvzMyGJBSDMigUFCxShCjYhSNoESmEKYyaZgFK8iggoAoXooIPCiFQivaKkUtQxEQEEUmUQaVwUpFRZmJRKaACRAy7ucFf04JCVDiOVm/wPfDda52H5K9bnYw+2Sxzt6BGFZERERERETEFFd3ZSgqAZlUmDFjBp07d2bkyJFER0cHYggRERERERERcSwgF2qMiIhg1KhRzJ8/PxC7FxERERERESkWPM8rsocLAVmpABAVFUVUVFSgdi8iIiIiIiIijgVsUkFERERERETkcpfrOiDAAvL2BxERERERERG59GmlgoiIiIiIiEiAeLr7g4iIiIiIPasObHGdcEHVHt7lOuG8dvWq7TrhgspN3ug6QUTOQ29/EBEREREREZFC0UoFERERERERkQDJvcTf/qCVCiIiIiIiIiJSKFqpICIiIiIiIhIgnqeVCiIiIiIiIiIi+WilgoiIiIiIiEiA6JoKIiIiIiIiIiIFuKwmFZo1vZ9NG5ey5ZtPmTljKmXKRLhOysd6o/U+UKM/WO8D+43W+8B+o/U+UKM/WO8D+43W+8B+o/U+gD90aMknaxawcvX7LF46k1vq3ew6idDo+yj11ERKPfknSj0+luCqtSAomBJt/0jpIZMpPWQy4fHdXWf6FIevs/VG631WeUX4y4XLZlKhQoXy/O2NV2nfoTc33XwvO3fuZvRLw11n5WG90XofqNEfrPeB/UbrfWC/0XofqNEfrPeB/UbrfWC/0XofQK1aNXj+xSF0aNOThg0SePX//ZVp70x22hR0VRXC47txcurzpL8ykMxlsynZfRiht91HUGQVTvy//pwYP4CQmjcTUvdup61QPL7O1hut94k7AZlUyM7OZs6cOSxatIisrCxeeOEF4uPjGTZsGEePHg3EkBfUuHEsGzZ8zbZtOwF4bep0Ondq7aTlXKw3Wu8DNfqD9T6w32i9D+w3Wu8DNfqD9T6w32i9D+w3Wu8DyMjMZODjI9i//yAA/970HyIrViAsLMxdVHYWGbMm46UdASB37zaCypSD0DCCwktAaCiEhp3636xMd53/pzh8na03Wu+zLNfziuzhQkAmFUaMGMGnn37KokWLSExMJDQ0lAkTJlC9enWee+65QAx5QdWqVmZv0j7fdlJSMldeWdbUkh3r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j9DQUBITE+nRowfh4eE0bdq0wIt7iIiIiIiIiFyKXN3qsagEZFLB8zyCgoIAqF69OlOnTqV79+6UL1/e97yIiIiIiIiIFG8BuVBjkyZNSExMZPPmzQBcd911TJw4kYEDB7JnT9EvxxARERERERFxwfO8Inu4EJCVCv369SM6OporrrjC91x0dDRz587lzTffDMSQIiIiIiIiIlLEAnb3B3/ShRpFREREREQuXZfyhRrDivDn2SwHxzEgb38QEREREREREbsWLlxIs2bNiIuL49133y30fgLy9gcRERERERERweS9H/bv38+ECROYO3cu4eHhdOzYkfr161OrVq2L3pcmFUREREREREQuAampqaSmpuZ7vmzZspQtW9a3vXbtWu68807KlSsHwIMPPshHH31Ev379LnrMYjGpcCm/v0ZEREREREQuXUX58+yf//xnJk+enO/5fv368fjjj/u2Dxw4wFVXXeXbjoyM9N298WIVi0kFERERERERETm/rl270rp163zPn7lKASA3N5egoCDftud5ebYvhiYVRERERERERC4BZ7/N4VwqVarEhg0bfNsHDx4kMjKyUGPq7g8iIiIiIiIil5G77rqLdevWkZKSQnp6Oh9//DH33ntvofallQoiIiIiIiIil5GKFSsyaNAgunTpQlZWFu3atSMqKqpQ+wryPM/iHS5ERERERERExDi9/UFERERERERECkWTCiIiIiIiIiJSKJpUEBEREREREZFC0aSCiIiIiIiIiBTKZTWpsHDhQpo1a0ZcXBzvvvuu65xzOnbsGC1atCApKcl1Sj6TJ0+mefPmNG/enHHjxrnOKdDEiRNp1qwZzZs356233nKdc05jx45l6NChrjMKlJiYSPPmzUlISCAhIYGvv/7adVI+K1asoE2bNjRt2pRRo0a5zsnnX//6l+/4JSQkEB0dzQsvvOA6K4/333/f99/z2LFjXecU6PXXX+fBBx8kPj6ev/71r65zfM7+Pr127Vri4+OJi4tjwoQJjutOKehcMmTIEObOneuw6r/O7ps1axYtWrQgPj6eYcOGkZmZ6bgwf+M///lPmjdvTrNmzRg7diyur3V9rtcL77zzDomJiY6q8jq7cdiwYcTFxfm+Ny5dutRU31dffUX79u1p3rw5TzzxhLm/h6tWrcpzbrnzzjvp06eP68R8x3H16tW0bNmSFi1aMGTIEOfH8ey+uXPn0qxZM+Lj4xk1ahTZ2dlO+wp6fW3pvHKu1/9ZWVl07dqVL774wmGdmOBdJn7++WevYcOG3pEjR7zjx4978fHx3o8//ug6K59///vfXosWLbybbrrJ27t3r+ucPNasWeN16NDBy8jI8DIzM70uXbp4H3/8seusPL744guvY8eOXlZWlpeenu41bNjQ2759u+usfNauXevVr1/fe/rpp12n5JObm+s1aNDAy8rKcp1yTnv27PEaNGjgJScne5mZmV6nTp28Tz75xHXWOf3www9e48aNvcOHD7tO8Tlx4oR3++23e4cPH/aysrK8du3aeWvWrHGdlceaNWu8Fi1aeGlpaV52drbXp08fb8mSJa6z8n2fTk9P92JjY709e/Z4WVlZXo8ePZz/fTy78eeff/b69OnjRUVFee+9957TtoL6duzY4TVu3NhLS0vzcnNzvSFDhnhvvfWWqcY9e/Z4jRs39o4fP+5lZ2d7HTp08D777DMzfaf9+OOP3j333OM9/PDDztpOK6ixRYsW3v79+x2XnXJ2X1pamnf33Xd73333ned5njdo0CDv3XffNdV4pgMHDnj333+/t3PnTjdx/6egxnvvvdfbtm2b53me9/jjj3uzZ88207d9+3bvnnvu8f09HDlypPfmm2866yvo9fXChQvNnFfO9fp/+/btXocOHbw6dep4n3/+uZM2seOyWamwdu1a7rzzTsqVK0fp0qV58MEH+eijj1xn5TN79mxGjhxJZGSk65R8rrrqKoYOHUp4eDhhYWHUrFmTffv2uc7K44477mD69OmEhoZy+PBhcnJyKF26tOusPI4ePcqECRN49NFHXacUaMeOHQD06NGDli1b8s477zguym/p0qU0a9aMSpUqERYWxoQJE6hbt67rrHN6/vnnGTRoEOXLl3ed4pOTk0Nubi7p6elkZ2eTnZ1NiRIlXGfl8e2339KgQQMiIiIICQnhnnvuYdmyZa6z8n2f3rx5M9deey3VqlUjNDSU+Ph45+eXsxsXLlzI/fffT9OmTZ12nXZ2X3h4OCNHjiQiIoKgoCCuv/565+eXsxurVavGBx98QOnSpUlNTeXYsWOULVvWTB9AZmYmzz33HP3793fWdaazG9PT09m3bx/Dhw8nPj6eSZMmkZuba6ZvzZo13HLLLdSuXRuAESNG0LhxY2d9cP7XhePGjaNjx45Ur1696MPOUFBjTk4Ox44dIycnh4yMDKfnl7P7tm7dyi233OLbbtiwodNzS0Gvr3ft2mXmvHKu1/9z5syhV69epl9/SdEJdR1QVA4cOMBVV13l246MjGTz5s0Oiwr20ksvuU44p+uuu873/3ft2sWHH37IjBkzHBYVLCwsjEmTJvHmm2/SpEkTKlas6Dopj+eee45BgwaRnJzsOqVAqampxMTE8Oyzz5KVlUWXLl2oUaMGd999t+s0n927dxMWFsajjz5KcnIy9913HwMHDnSdVaC1a9dy8uRJMz/MnRYREcGAAQNo2rQppUqV4vbbb+fWW291nZXHTTfdxOjRo+nTpw+lSpVixYoVzpebQ/7v0wWdX/bv31/UWXmc3dirVy8ANm7c6CInn7P7qlSpQpUqVQBISUnh3Xff5eWXX3aR5lPQ+TgsLIzZs2czduxYoqKifD98ulBQ3yuvvELbtm2pWrWqg6L8zm48dOgQd955JyNHjqRMmTL06dOHOXPm0L59exN9u3fvpnTp0gwaNIgdO3Zw6623On+b4rleF+7atYsvv/zSxOvGghqef/55EhMTiYiIoGrVqjRp0sRB2Sln99WuXZsxY8aQnJxMZGQkH330EYcOHXJUV/Dr64cfftjMeeVcr/9PT2b94x//cNIltlw2KxVyc3MJCgrybXuel2db/nc//vgjPXr0YMiQIc5nx8+lf//+rFu3juTkZGbPnu06x+df//oXV199NTExMa5TzqlevXqMGzeOMmXKUL58edq1a8eqVatcZ+WRk5PDunXrGD16NLNmzWLz5s3MmzfPdVaBZs6cSffu3V1n5PP999/z3nvvsXLlSj777DOCg4P5+9//7jorj5iYGNq0aUNiYiK9evUiOjqasLAw11n56PziP/v376dr1660bduW+vXru84pUPv27fniiy+oUKECkydPdp3js2bNGpKTk2nbtq3rlHOqVq0aU6ZMITIyklKlSpGYmGjq/JKTk8Pq1at54oknmDt3Lunp6bz++uuuswo0a9YsOnfuTHh4uOuUfA4ePMj48eNZtGgRq1evpm7dus4nCc9Uo0YNnnzySf74xz/y0EMPccMNN5g4t5z5+rpatWrmzivF4fW/uHPZTCpUqlSJgwcP+rYPHjxo8i0G1m3cuJFu3brx5JNP0rp1a9c5+Wzfvp3vvvsOgFKlShEXF8fWrVsdV/3X4sWLWbNmDQkJCUyaNIkVK1YwevRo11l5bNiwgXXr1vm2Pc8jNNTWoqYKFSoQExND+fLlKVmyJA888IDJlUeZmZmsX7+eRo0auU7JZ/Xq1cTExPDb3/6W8PBw2rRpw5dffuk6K49jx44RFxfHwoULefvttwkPD6datWqus/LR+cU/tm/fTseOHWndujV9+/Z1nZNPcnKyb6VHaGgozZs3N3V+WbRoET/++CMJCQmMGDGCb775xtwKrq1bt7JkyRLftrXzS4UKFahbty7VqlUjJCSEpk2bmjy3ACxfvpxmzZq5zijQhg0buP7667nmmmsIDg6mffv2ps4vGRkZREVFMX/+fGbOnEnFihWdn1vOfn1t7bxi/fW/uHfZTCrcddddrFu3jpSUFNLT0/n444+59957XWcVK8nJyfTt25fx48fTvHlz1zkFSkpKYsSIEWRmZpKZmcny5cuJjo52neXz1ltvsWjRIt5//3369+9Po0aNGD58uOusPNLS0hg3bhwZGRkcO3aMefPmOX9P6dkaNmzI6tWrSU1NJScnh88++4ybbrrJdVY+W7dupXr16uau6wGnln+uXbuWEydO4HkeK1asoE6dOq6z8khKSuKxxx4jOzubtLQ05syZY+5tJAB169Zl586d7N69m5ycHBYtWqTzy0U6duwYPXv2ZMCAAfTo0cN1ToHS0tIYPHgwqampeJ7HkiVLTJ1fXn75ZT788EPef/99Ro0axc0338yf/vQn11l5eJ7H6NGj+eWXX8jKymLWrFmmzi8NGjRgy5Ytvrcnrly50uS5JSUlhZMnTzr/Qfhcrr/+ejZv3ux7S8Hy5ctNnV9OnDhBt27dOHbsGJmZmbzzzjtOJ2gKen1t6bxSHF7/i3t2pocDrGLFigwaNIguXbqQlZVFu3btiIqKcp1VrPz9738nIyODMWPG+J7r2LEjnTp1cliVV2xsLJs3b6ZVq1aEhIQQFxenb4AXqWHDhnz99de0atWK3NxcOnfuTL169Vxn5VG3bl169epF586dycrK4u677za55Hfv3r1UqlTJdUaBGjRowLfffkubNm0ICwujTp069O7d23VWHrVr1yYuLo6WLVuSk5NDt27dTP0Qd1qJEiUYM2YMjz/+OBkZGcTGxjp9/3BxNGfOHA4dOsRbb73luxVwo0aNGDBggOOy/7r++uvp3bs3HTt2JCQkhNtuu83kW5ssq127Nr1796ZTp05kZ2cTFxdHixYtXGf5XH311bzwwgs8+uijZGRkcOONN/L000+7zsonKSnJ7LkFoGbNmgwYMIAuXboQEhLCtddea+qWyr/5zW/o27cvHTp0IDs723crW1fO9fraynmlOLz+F/eCPAtXvRIRERERERGRYueyefuDiIiIiIiIiPiXJhVEREREREREpFA0qSAiIiIiIiIihaJJBREREREREREpFE0qiIiIiIiIiEihaFJBRETEuHr16pGUlMR//vMf+vfvf96P3bx5M88991wRlYmIiMjlTpMKIiIixUSdOnWYNGnSeT9m27Zt7N+/v4iKRERE5HIX6jpARETkUvLFF18wfvx4KleuzI4dOyhZsiRjxozhjTfe4OjRo+zdu5f77ruPAQMGMH78eNavX09OTg6///3vGTFiBBEREWzYsIEXX3yRoKAg6tSpQ25urm/fL774IosWLeL48eOMGjWKTZs2ERISwgMPPECnTp2YNGkSaWlpDBs2jJdfftnx0RAREZFLnVYqiIiI+Nk333xDYmIiCxcupE2bNgwePBiAkydP8sEHHzB48GBef/11QkJCmDt3LgsWLCAyMpLx48eTmZnJgAEDGDp0KPPnz6d+/fqcPHky3xiTJk0iIyODxYsXM3/+fDZt2sSePXvo378/t912myYUREREpEhoUkFERMTPateuzW233QZA27Zt+e677zh69CjR0dG+j/nkk09YsWIFrVq1IiEhgWXLlrF9+3Z++OEHQkNDiYmJAaBFixZcccUV+cZYu3Yt7dq1IyQkhPDwcN555x3q169fNH9AERERkf+jtz+IiIj4WUhISL7ngoODKV26tG87NzeX4cOHExsbC8Dx48fJyMhg3759eJ6X53NDQ/OfrkNDQwkKCvJtJycnU7JkSX/9EURERET+J1qpICIi4mfff/8933//PQCzZs2iXr16lC1bNs/HNGjQgHfffZfMzExyc3N59tlnefXVV7nhhhvwPI9Vq1YBsHz5cn755Zd8Y8TExDBv3jxyc3PJzMykf//+rF+/npCQELKzswP/hxQRERFBkwoiIiJ+V6FCBf70pz8RHx/PsmXLGDduXL6Peeyxx6hSpQqtW7emWbNmeJ7H0KFDCQsLY8qUKUycOJGEhASWLl3Kb3/723yf369fP8LCwkhISKBVq1bExsYSFxfHLbfcwt69e+nXr19R/FFFRETkMhfknb3GUkRERArtzDs0iIiIiFzqtFJBRERERERERApFKxVEREREREREpFC0UkFERERERERECkWTCiIiIiIiIiJSKJpUEBEREREREZFC0aSCiIiIiIiIiBSKJhVEREREREREpFA0qSAiIiIiIiIihfL/AY5D73ldT5/7AAAAAElFTkSuQmCC\n"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# tn, fp, fn, tp = confusion_matrix( test_y, y_pred)\n",
    "sns.set()\n",
    "fig = plt.figure(figsize=(20,10))\n",
    "ax=fig.add_subplot(111)\n",
    "C2= confusion_matrix(test_y, y_pred, labels=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])\n",
    "sns.heatmap(C2,annot=True,ax=ax) #画热力图\n",
    "\n",
    "ax.set_title('confusion matrix') #标题\n",
    "ax.set_xlabel('predict') #x轴\n",
    "ax.set_ylabel('true') #y轴\n",
    "plt.show()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "markdown",
   "id": "4631b006",
   "metadata": {},
   "source": [
    "### 4. 一些其他的代码"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "78ba3e5c",
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "## 更改字体解决中文出现方框问题\n",
    "\n",
    "import matplotlib\n",
    "\n",
    "fonts = sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist])\n",
    "print(fonts) #查看字体列表\n",
    "\n",
    "plt.rcParams['font.family'] = 'Microsoft YaHei' #更改字体"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "id": "c38c7825",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "测试集每个样本的得分\n",
      " [17. 15. 14. 15. 17. 18.  7. 10. 14. 14.  5. 12. 16. 19.  8. 17. 16. 20.\n",
      " 14. 19. 11. 15. 12. 17. 19. 21. 11. 10. 19. 13. 18. 12. 17.  4. 16. 19.\n",
      " 21.  5. 15. 14.  0.  8.  0.  9. 10.  1. 12. 20. 14. 18. 12.  0. 13. 11.\n",
      "  7. 18.  9.  8. 21. 17. 20. 18. 19. 19. 17.  6. 13.  4.  4.  1.  4. 12.\n",
      "  4.  4.  3.  1.  7.  8. 15.  6. 14.  8.  2. 20. 21.  9. 16.  1.  0. 19.\n",
      "  4.  8. 11. 19.  9.  0. 21. 16. 11. 20.  5.  7.  2. 16. 14. 17. 20. 10.\n",
      "  7.  6. 14.  8.  2. 13. 12. 21.  1.  0. 21. 15. 20.  1. 19. 17.  1.  5.\n",
      "  1. 17.  4.  1. 21.  5.  5.  2. 18. 18.  0.  3. 19.  9. 21.  0.  2. 11.\n",
      " 12. 13. 11. 13.  7. 15.  3. 16.  7.  8. 10. 14.  6. 18. 15. 20.  0. 13.\n",
      "  3.  6.  4.  2.  4. 18. 20.  1. 11. 14.  4.  9.  5. 21.  5. 10. 10. 12.\n",
      " 10. 13.  5.  5.  7.  2.  7. 19.  4. 10.  7. 10.  1.  8. 15. 17. 19. 14.\n",
      " 10.  4. 19. 13.  3. 20. 16.  4.  2. 11.  1. 20.  5.  3.  9.  8. 17.  1.\n",
      " 17. 14.  6.  8. 11. 19.  4.  1.  3. 16. 21. 14. 16. 13.  0. 15. 17.  9.\n",
      " 12. 10. 14.  4. 18. 15.  3. 10. 21.  0.  6. 17. 13. 10. 10. 10. 18.  2.\n",
      " 18. 19.  3.  0. 16.  9.  5. 11.  9.  4. 16.  8.  6. 20.  2.  1. 14. 10.\n",
      " 14.  8. 14. 15.  7. 16. 16. 17. 18.  4. 10.  9. 11.  9.  1. 16.  9. 18.\n",
      " 20.  1. 14. 21.  7.  1. 21.  2. 21. 12.  9.  5.  1. 21.  1. 14.  1.  4.\n",
      " 11. 13. 10. 18. 12. 10. 10.  3.  5.  6. 17. 13.  2. 18.  4.  6. 17.  9.\n",
      " 12. 19.  4. 21.  1. 13. 18. 12. 10. 10.  4.  6.  7. 21. 12. 16.  9. 17.\n",
      " 16.  1. 12. 21.  3.  3.  3. 14. 20. 11.  8. 12.  1. 11. 12. 11. 10.  4.\n",
      " 15.  1.  1. 17.  6. 20.  5. 13.  8.  2. 11. 20.  6. 20. 11. 11. 14.  8.\n",
      " 18. 11.  4.  3. 12. 17. 12. 20.  6. 10.  4.  4.  2.  9.  0.  3.  2. 17.\n",
      " 11.  8. 17.  9.  1.  7. 13. 21.  2. 11.  5.  0.  7.  8. 12. 20.  3.  2.\n",
      " 17.  6.  7. 18.  1. 15.  8.  5. 19.  6. 19. 15.  3.  4. 17. 15.  3. 18.\n",
      " 19.  0. 12.  3. 20. 17.  0. 11. 21.  2. 19.  1. 12. 14.  6.  1.  7.  9.\n",
      " 17.  0.  5.  9. 10. 10. 14.  0.  6.  1.  5.  8. 11. 20. 14. 15.  8. 18.\n",
      "  4. 17. 15. 20. 21. 17. 11. 11.  9. 15. 19. 14.  8.  3. 13. 19. 10.  8.\n",
      "  5.  5.  7. 11. 12. 11. 13. 14. 11. 13.  9.  7.  5. 15. 11. 11.  6. 18.\n",
      "  1.  1. 11.  5.  7. 17.  4. 19. 13.  5.  3. 14. 17.  1.  9.  2. 19.  9.\n",
      " 11. 11. 11.  6.  1.  7.  5. 17. 16. 11.  1.  2. 20.  2. 11.  1. 21. 11.\n",
      " 10.  6. 19.  3.  7. 10. 15.  1. 14. 17. 13. 19. 10. 15.  9.  9.  6. 16.\n",
      " 17. 14. 10.  0. 18.  8.  6.  1. 13.  1.  1. 15. 18. 16. 18. 19.  8.  4.\n",
      "  8.  5. 11.  6.  8.  8.  3. 17. 15. 10.  0. 16.  7.  6.  0. 10.  8. 15.\n",
      " 15. 16. 19.  4.  6. 15. 14. 12. 18.  2. 11. 13.  7.  2.  4. 19. 14.  6.\n",
      "  5. 20.  6. 16. 13. 16.  1. 13.  0. 20. 17.  1. 21.  1. 10.  5. 17.  0.\n",
      " 12.  7.  2. 11. 16.  3.  0.  9. 13. 12.  1.  4.  9.  1. 14. 19. 20.  0.\n",
      " 17.  3. 14. 15. 17. 17. 19.  4.  0.  1. 12.  8. 19.  3. 16. 18. 19. 13.\n",
      "  3. 12. 17. 15. 15.  1.  2. 14. 11. 10.  9. 11. 20.  0. 16. 10.  5. 12.\n",
      "  8. 14. 13.  1.  0.  6.  6. 18. 18. 16. 21. 10. 13. 18.  9. 21. 17. 11.\n",
      "  7. 19.  0. 12. 15.  8. 20. 17.  5. 19.  8. 12.  0.  1.  9.  3.  3.  7.\n",
      " 15.  7.  9. 18. 12. 15. 11. 17. 18.  1.  6.  1.  6.  3.  4.  0.  6.  1.\n",
      " 13.  3.  8.  4. 18. 15.  4. 15. 16. 19.  9.  3. 12. 16. 20.  5. 21. 10.\n",
      "  6. 10. 21. 10.  2.  2.  0. 10. 15.  3.  3. 14. 19.  2. 12.  3.  3. 17.\n",
      " 12. 10. 17. 18. 10. 20.  0. 11.  5. 11. 19. 10. 12.  7. 21.  7.  6. 18.\n",
      " 19. 19.  1. 20.  3. 13.  9.  3.  6. 11. 12.  3. 20. 10. 14.  7.  1.  9.\n",
      "  7.  3. 11.  4.  4.  4. 15.  2.  5.  3. 18. 11.  8.  6.  7.  7.  8. 20.\n",
      " 16.  7.  3. 19.  9.  6. 17.  5.  6. 12.  2. 15.  4. 12.  6. 21.  7.  0.\n",
      "  0.  9.  9. 10.  1. 15.  4.  0. 18.  9. 10.  6.  4. 11.  7.  6.  9. 12.\n",
      "  0. 14.  3.  0.  6.  2.  7.  9.  6.  5.  0.  2. 19. 15.  7. 14.  7.]\n",
      "测试集每棵树所属的节点数\n",
      " [[ 7. 15.  7. ... 13.  9.  3.]\n",
      " [ 7. 15.  7. ...  4.  9.  3.]\n",
      " [ 7. 15.  7. ... 13.  9.  3.]\n",
      " ...\n",
      " [ 7. 15.  7. ... 13.  8.  3.]\n",
      " [ 7. 15.  7. ... 13.  9.  3.]\n",
      " [ 7. 15.  7. ... 17.  9. 14.]]\n",
      "特征的重要性\n",
      " [[[-3.97577360e-02 -3.07413433e-02 -3.33376997e-03 -3.07650771e-02\n",
      "   -5.54167014e-03  4.74494427e-01]\n",
      "  [ 1.50067336e-03  1.17728044e-03  8.46789312e-03 -5.84333427e-02\n",
      "   -6.87118173e-02  4.77627218e-01]\n",
      "  [-4.84597348e-02  4.12253244e-03  7.02404650e-03 -3.25851887e-02\n",
      "   -2.99436897e-02  4.59228367e-01]\n",
      "  ...\n",
      "  [ 9.17496085e-02  2.72142910e-03 -1.25537841e-02 -8.24252665e-02\n",
      "   -3.60437371e-02  4.80866134e-01]\n",
      "  [ 8.40682629e-03 -3.92199680e-02 -4.98925634e-02 -3.61965271e-04\n",
      "   -9.61713679e-03  4.51955765e-01]\n",
      "  [ 4.29441109e-02 -2.85472744e-03 -6.17021546e-02 -4.16532299e-03\n",
      "    9.90464613e-02  4.56702828e-01]]\n",
      "\n",
      " [[-4.96740900e-02  1.72605235e-02  2.82767974e-03 -5.99751137e-02\n",
      "   -3.90146859e-03  4.74494427e-01]\n",
      "  [ 1.19121205e-02  2.92897894e-05 -5.22763561e-03 -7.16752186e-02\n",
      "   -2.42609326e-02  4.77627218e-01]\n",
      "  [-4.61446531e-02 -1.45571295e-03  2.60460679e-03 -2.91742384e-02\n",
      "   -2.41095573e-02  4.59228367e-01]\n",
      "  ...\n",
      "  [ 3.27263363e-02 -2.83732451e-02 -3.78721245e-02 -4.72761579e-02\n",
      "   -3.27802822e-02  4.80866134e-01]\n",
      "  [-1.81104906e-03 -3.63153592e-02 -4.99777235e-02  7.70556461e-03\n",
      "    2.56046257e-03  4.51955765e-01]\n",
      "  [ 1.28757702e-02 -3.08465045e-02 -4.30031344e-02 -6.22279849e-03\n",
      "   -3.11136581e-02  4.56702828e-01]]\n",
      "\n",
      " [[-4.96334210e-02  6.30932376e-02  2.78585078e-03 -6.55755624e-02\n",
      "   -9.75213572e-03  4.74494427e-01]\n",
      "  [ 1.81691181e-02 -1.78962958e-03 -2.96606645e-02 -4.69893403e-02\n",
      "   -5.26167862e-02  4.77627218e-01]\n",
      "  [-3.06308344e-02 -9.62371379e-03 -1.43175228e-02 -2.22216472e-02\n",
      "   -2.03747824e-02  4.59228367e-01]\n",
      "  ...\n",
      "  [-7.36019239e-02 -3.56790945e-02 -4.88466322e-02  1.90117583e-02\n",
      "    1.82759818e-02  4.80866134e-01]\n",
      "  [-1.59850661e-02 -2.71683782e-02 -2.83410475e-02 -2.31158547e-02\n",
      "   -5.48024382e-03  4.51955765e-01]\n",
      "  [-9.74472146e-03 -2.42031217e-02 -6.27439320e-02 -6.46169949e-03\n",
      "    1.47020479e-03  4.56702828e-01]]\n",
      "\n",
      " ...\n",
      "\n",
      " [[-3.95977460e-02 -3.09720598e-02  3.37539008e-03 -3.68197337e-02\n",
      "   -6.12544920e-03  4.74494427e-01]\n",
      "  [ 2.53181197e-02  2.39549787e-03 -1.44591639e-02 -5.33835217e-02\n",
      "   -6.07434213e-02  4.77627218e-01]\n",
      "  [-3.55182327e-02  3.27087799e-03 -1.46081345e-02 -2.77946368e-02\n",
      "   -2.40863841e-02  4.59228367e-01]\n",
      "  ...\n",
      "  [-4.33422774e-02 -8.37471802e-03 -2.94869971e-02 -3.12898047e-02\n",
      "   -8.34611896e-03  4.80866134e-01]\n",
      "  [-7.29898736e-02 -2.95855254e-02 -9.10324305e-02  9.59705040e-02\n",
      "    6.55970052e-02  4.51955765e-01]\n",
      "  [-1.55985067e-02 -1.54007683e-02 -6.03534654e-02 -3.59551348e-02\n",
      "    4.00804542e-02  4.56702828e-01]]\n",
      "\n",
      " [[-3.97909097e-02 -2.79330220e-02 -3.24416324e-03 -3.27807739e-02\n",
      "   -6.39072992e-03  4.74494427e-01]\n",
      "  [ 1.75518021e-02  6.84158038e-03  1.00156423e-02 -5.84333427e-02\n",
      "   -7.44505674e-02  4.77627218e-01]\n",
      "  [-4.83461991e-02  4.60273027e-03  6.98677404e-03 -3.29929292e-02\n",
      "   -3.00924070e-02  4.59228367e-01]\n",
      "  ...\n",
      "  [-6.57762215e-02 -6.55986369e-03 -8.55677761e-03  1.79409571e-02\n",
      "    1.99544728e-02  4.80866134e-01]\n",
      "  [-6.92120101e-03 -3.12566161e-02 -3.29567753e-02 -2.30106730e-02\n",
      "   -5.94532676e-03  4.51955765e-01]\n",
      "  [-1.17733357e-02 -2.01109927e-02 -6.47861063e-02 -1.84526071e-02\n",
      "    1.63153782e-02  4.56702828e-01]]\n",
      "\n",
      " [[-3.80810909e-02 -2.69262437e-02 -5.95761789e-03 -3.25372182e-02\n",
      "   -6.63743075e-03  4.74494427e-01]\n",
      "  [ 1.76013857e-02  6.53192820e-03  8.06174148e-03 -5.84333427e-02\n",
      "   -7.22365975e-02  4.77627218e-01]\n",
      "  [-4.83572036e-02  4.60007600e-03  7.30386423e-03 -3.29759642e-02\n",
      "   -3.04128025e-02  4.59228367e-01]\n",
      "  ...\n",
      "  [-1.16140237e-02 -9.98872798e-03 -3.67145017e-02 -4.15888764e-02\n",
      "   -6.35980256e-03  4.80866134e-01]\n",
      "  [-5.01289740e-02 -3.53706069e-02 -8.95368829e-02  1.13079771e-01\n",
      "   -3.95203289e-03  4.51955765e-01]\n",
      "  [-2.62000933e-02 -1.50651075e-02 -3.25323120e-02 -4.27742414e-02\n",
      "    6.96999431e-02  4.56702828e-01]]]\n"
     ]
    },
    {
     "data": {
      "text/plain": "<Figure size 432x288 with 1 Axes>",
      "image/png": "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\n"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "ypred = bst.predict(dtest)\n",
    "print(\"测试集每个样本的得分\\n\",ypred)\n",
    "ypred_leaf = bst.predict(dtest, pred_leaf=True)\n",
    "print(\"测试集每棵树所属的节点数\\n\",ypred_leaf)\n",
    "ypred_contribs = bst.predict(dtest, pred_contribs=True)\n",
    "print(\"特征的重要性\\n\",ypred_contribs )\n",
    "\n",
    "plt.rcParams['font.family'] = 'Microsoft YaHei' #更改字体\n",
    "xgb.plot_importance(bst,height=0.8,title='影响糖尿病的重要特征', ylabel='特征')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}